тогда можно заменить исследование на создание юнита
здание создает определенного юнита -> повышаем уровень инвентаря
у этого способа есть несколько минусов:
одна иконка на всех уровнях улучшения
юнит не исчезнет на последнем уровне улучшения, а значит придется заменять здание на другое, но уже без этого юнита
EHP_Sequence, они лишь кажутся сложными. По сути триггеры в графическом виде интерпретируют язык программирования, на котором написана вся игра. Попробуй для начала в изначальном триггере добавить действия из категории Видимость - Disable Fog of War и Disable Black Mask, они откроют всю карту. Потом добавь действие из категории Игрок - самое первое, оно установит стартовое количество золота первому игроку. Порассматривав их и поразбиравшись, поймёшь, что это просто ещё дополнительные функции редактора.
А так по идее есть один вариант через Редактор объектов, который не проверял, потому что это зашквар какой-то) Найди для предмета способность Книга заклинаний, нажми Ctrl+D, чтобы слева в РО увидеть её равкод, добавь эту способность юниту, нажав Shift+Enter в поле способностей, и введя равкод книги, в книгу же добавь равкоды юнитов или предметов, которые хочешь сделать дополнительными.
Все просто: ты неправильно воспринял смысл этих условий.
Я, честно говоря, никогда не использовал такое условие, но есть мысль, что это условие подразумевает количество тех воиск, которые уже в атаке. Попробуй использовать другие условия.
брать группу юнитов, чекать позицию строителя\героя\здания, давать приказ на атаку в эту точку
или же дать обзор юнитам на всю карту и поставить радиус агра на всю карту
Почитай про утечки точек, как их создавать и удалять. Не знаю, как в твоём новом патче, но в 1.26 приказ отдаётся максимум 12 юнитам, у тебя может быть также, потому лучше отдавать приказ сразу после создания.
Предлагаю улучшить так:
Создать переменные для двух точек;
В триггере инициализации указать точкам значение центра областей 016 и 025;
Сделать периодический триггер с условием, что Король Мёртвых жив, а в действиях создание групп юнитов в одной точке, а сразу после создания приказ (Last Created Group) Перейти, нападая на противников, в другую точку;
По идее ещё бы отключить триггер за ненадобностью после смерти Короля Мёртвых, раз уж много таких триггеров, но всё равно изменение нагрузки будет незаметным, поэтому можно не отключать.
P. S. Утечка точки весит 0.361 кб, даже если не удалять утечки в этом триггере, то за 30 минут это будет 0.361х4х30=43.32 кб, что вполне приемлимо.
создать.
направить на 128 точек наверх(90)
сделать неперманентным
текст удалится через 3 секунды
текст затухнет до 100% прозрачности через 3 секунды
Вот чёрт. не успел приплюснуть к посту.
скрин скинул выше, но там ошибка. И если раскрыть, то обнаруживается еще одна утечка: на гуи Point(0,0), а на jass эта команда называется по-другому Location(0,0), эта функция создает точку
раскрыть
попробуй раскрутить, и использовать эту
native CreateItem takes integer itemid, real x, real y returns item
через CS: call CreateItem( id, GetUnitX(u), GetUnitY(u))
где id - ид-номер типа предмета, u - юнит. Ввести тип предмета, и юнита нужно.
можно еще запомнить как-то, чтобы к предмету как-то обращаться
через CS: set it = CreateItem( id, GetUnitX(u), GetUnitY(u))
где it - переменная предмета. Объявить переменную и обращаться
после разложения костей юниты сами выгружаются из памяти
функция "wait" то же вызывает утечки
она не вызывает утечки, она сама по себе кривая и не подходит под большинство задач
если создать переменную "Point" типа "точка" и изначально задать ей положение центр области "Final", а потом обращаться уже к этой переменной "Point" в триггере событие "боевая единица входит в область "Start", действие "отдать приказ боевой единице следовать в "Point" , то новые точки создаваться не будут?
да
только в гуи еще и создание юнитов утекает тоже насколько я помню, надо тоже заранее точку делать
впринципе можно было бы обойтись одной точкой на все действия, но вам видимо пока рано
zontik2012 нет, не является утечкой. Если бы ты крепил эффект к точке, к примеру в позиции юнита, причем не удалял бы эту точку потом - то это была бы утечка
Оба файла удаляются, потому что ты импортируешь их в карту через программу и не добавляешь данные о файлах в файл импорта(war3map.imp). При сохранении карты в редакторе архив пересобирается, и в него добавляются сторонние файлы, которые сохранены в том самом файле импорта. Поэтому используй стандартный менеджер импорта в редакторе.
Надо делать это с юнитом во время создания относительно уровня сложности. Если сложность *такая то* то создать юнита и сделать с ним *то-то* иначе, *другое то-то*
Afterdeath, скрин не могу, я с мобильного сейчас. Текстом напишу, по памяти.
Действия:
Pick every unit in playable map area and do multiple actions:
If picked unit belongs to ally of (Игрок 1) = да then (это союзник игрока 1).
Hide picked unit.
8gabriel8
я переписал всё на jass - вроде работает как надо
MUI как побочный эффект от хештаблицы и таймера
проверь как работает, а то я сутками не спал
Я там если что поменял Set Life на UnitDamageTarget, чтобы золото капало с убитых гноллов
И если нужно будет поменять способность на другую - то просто в константе passiveAbility поменять равкод
и ещё я там расставил комментарии где можно редактировать волны
Pingvinromeo, проблема в том что ты фигню творишь
если спел применён в точку то точка есть
перемещение это 1 действие
за это время точка не исчезнет
короче пруфы того что не работает
есть специальная функция на jass, которая называется MoveRect() или SetRect(). С помощью этих функций и перемещаете.
native MoveRectTo takes rect whichRect, real newCenterX, real newCenterY returns nothing
native SetRect takes rect whichRect, real minx, real miny, real maxx, real maxy returns nothing
создать.
направить на 128 точек наверх(90)
сделать неперманентным
текст удалится через 3 секунды
текст затухнет до 100% прозрачности через 3 секунды
Вот чёрт. не успел приплюснуть к посту.
После создания юнита нужно удалить последнюю созданную группу. В Custom Script.
call DestroyGroup(bj_lastCreatedGroup)
Если же есть JNGP, то там есть функция по удалению группы.
Также нужно создать переменную TempLocation, перед созданием юнита в неё записывать позицию, где хочешь создать юнита, а после создания удалять эту позицию.
А ещё, это не сработает, как ты хочешь. После 270 секунд триггер начнёт выполнятся, "Тип исследуемой технологии" будет ничем, таким образом, выражение в "Тогда" не выполнится.
Нужно создать отдельный периодический таймер для каждого игрока (то есть массив таймеров), при завершении исследования, стартануть таймер для игрока. Сделать триггер, срабатывающий на завершение таймера, который и будет создавать юнита.
GetUnitsSelectedAll не освобождает хендл, но это не утечка.
С помощью set bj_wantDestroyGroup = true созданная в GetUnitsSelectedAll группа удаляются, но хендл не освобождается. Это не так страшно, но лучше сделать вот так.
globals
group TempGroup
endglobals
function GetUnitsSelectedAllFixed takes player whichPlayer returns group
set TempGroup = CreateGroup()
call SyncSelections()
call GroupEnumUnitsSelected(TempGroup, whichPlayer, null)
return TempGroup
endfunction
...
set bj_wantDestroyGroup = true
set udg_InfoPick[GetConvertedPlayerId(GetTriggerPlayer())] = GroupPickRandomUnit(GetUnitsSelectedAllFixed(GetTriggerPlayer()))
Дистанцию оставил как была (0). Но Скорость невидимой волны увеличил до 9999. Такое решение сразу же решило проблему.
Решение временное и сегодня же вечером поменяю её на канал.
предмет это просто иконка которая содержит способности
книга заклинания это способность
и редактировать нужно способность "книга заклинаний"
или создать на её основе новую способность "моя книга заклинаний"
а потом у предмета просто указать способность "моя книга заклинаний"
если не хватает знаний то их можно пополнить в статьях
Zeuz, ты должно быть хотел спросить можно ли в функции "IniTrig_Bleach" создавать сразу несколько локальных триггеров, добавлять им ивенты и действия и не будут ли они мешать друг другу. Не будут. Хотя события так ты показал в примере не выйдет добавить. Должно быть ты просто не помнишь название функции.
создаём юнита
даём юниту таймер
и проверяем что с ним стало
офигиваем от того что выяснили это сами
и не задаём тупых вопросов на 4 дня пропал и уже 69 тупых вопросов
если коротко то у тебя конфликт имён функций и глобальных переменных из за того что ты тупо скопировал
чтобы конфликта не было во 2 триггере надо переименовать все функции
Есть обычные тени - они выглядят как округлое-размытое пятно
А есть тени зданий - они являются своеобразным рисунком, размер которого не регулируется, как у варианта выше
Есть так же некая "текстура почвы", которая добавляет отрисовку на поверхности земли, стилизованную под постройки или даже под конкретную постройку (как например у ратуши и золотой шахты).
. . .
Под маленькую обсерваторию лучше использовать "тень здания" такую, которая соответствовала бы её размеру - например тень сторожевых башен орков/людей. Если нужно побольше - вариант с гнездом химеры, обелиском, и камнем воскрешения (как те что в кампании Рексара).
Касаемо текстуры земли - можно взять один из стандартных вариантов под здания альянса - каменная плитка на земле. Она есть разных размеров и подобрать что-то подходящее можно.
bladget, скорее всего (если у тебя Vista или W7 стоит), в старой папки остались "файлы совместимости", которые не удаляются просто так. В WoO много всякого мусора было...
Через что уничтожаешь? Если через килл, то конечно умирает и нейтральный.
Если наносить от какого-то даммика урон в мильены, то не умрет нейтральный.
Можно от даммика развеяние нежити за 0.01 сек.
Заменять можно, внося значение золота в переменную и потом, создавая новый рудник, ставить количество золота в него из переменной, благо это даже в ГУИ реализовано.
Это древняя бага ВЕ, много кто такое видел...
Ни будет робить, нужна основа где ипользуется это поле, в данном случае будут работать только поля от трансмутации ну и мб еще какое то, если близзы сделали еще какой то эффект у этой способности а потом убрали на уровне РО.
Прочие поля даже если будут записны в файл, будут тупо мусором, движек не смотрит на поля, движек смотрит на ID, от чего наследуются и какие свойста, а после работает с ними.
Создаёшь массив юнитов и запихиваешь в него крипов. Создаёшь массив точек и запихиваешь в него позиции соответствующих крипов. Делаешь триггер, который сверяет убитого с массивом юнитов и создаёт нового в соответствующей точке из второго массива.
Если тебе нужно, чтобы юниты воскрешались через какое-то время, то тебе придется изучить основы jass, а именно - узнать, как работают локальные переменные. Создаёшь локальный номер убитого, ждешь нужное время и воскрешаешь юнита с локальным номером.
Знаю такой баг. Вылечтл удалением из карты всего импорта-мусора и переводов путей импорта на источник из кампании.
Т.е. этот баг возникает при очень большом весе впихиваемой в кампанию карты.
Не советую делать карты на последних патчах, там близзарды сломали все что только можно было сломать. Это раз, два - для кого карта? На оф серверах все мертво, редкие мили матчи явно не ваша аудитория.
Три - 1.26 полно комьюнити + все работает, не хватает возможностей - мемхак в помощь.
Dimari93, во первых
для того чтобы написать комментарий не надо цитировать предыдущий
во вторых
ai файл это файл с джасс кодом
не знаешь джасс - ничего не поймёшь в ai и следовательно не сможешь модифицировать
в общем все возможные ответы даны и разжёвано так что любой знающий основы джасс поймёт
вопрос закрыт
globals
player Pl = null
endglobals
function abc takes nothing returns boolean
return IsUnitEnemy(GetFilterUnit(), Pl)
endfunction
function zemle takes nothing returns nothing
local unit u = GetTriggerUnit()
local group g = CreateGroup()
local real x = GetUnitX(u)
local real y = GetUnitY(u)
local real Random = GetRandomReal(0, 360)
local boolexpr d = Condition(function abc)
set Pl = GetTriggerPlayer()
call GroupEnumUnitsInRange( g, x, y, 850, d )
call ForGroup( g, function zemlee )
call UnitApplyTimedLife(CreateUnit (p, 'h007',x,y,Random),'BFiq',0.50 ) // ???
call DestroyGroup(g)
call DestroyBoolexpr(d)
set u = null
set p = null
set g = null
set d =null
endfunction
PT153, Вау, а я не знал. Этот вопрос был создан как раз для того чтоб найти способ избежать утечек из-за добавления события, а не для того чтоб вы писали очевидные вещи. Но пока, альтернативы ни на гуи ни на джасс никто не предоставил.
дык заноси их в группу, если юнит уже в группе то не добавляешь событие
сайт
custom value - целочисленное значение, которое вы устанавливаете с помощью триггера в единицу. в начале всегда всегда 0 для каждого блока, но вы можете установить его для каждого целого числа с действием «unit - set custom value».
Можете также и узнать сколько у юнита этого custom value. Переводится как обычное значение. Оно есть у юнита, предмета. У каждого юнита или предмета оно может быть разным. Короче можно систему намутить
Point Value (ты наверное про нижнюю функцию, также в первый раз слышу)? так в нее триггерно ничего нельзя записать, только узнать.
native GetUnitPointValue takes unit whichUnit returns integer
Значение точки - это целочисленное значение, заданное в редакторе объектов для типа единицы. на самом деле это значение того, сколько очков вы получите для обучения этого подразделения в конце игры, однако это бесполезно в пользовательских играх, и вы можете использовать его для настройки некоторых функций вашей карты. точечное значение единицы всегда задается в редакторе объектов и не может быть установлено на что-то еще во время игры. также все единицы того же типа получили одно и то же значение.
Неуязвимость проверяют через даммика с атакой, через приказ, сможет ли атаковать или нет, просто проверка выполнения приказа. Так же пытаются нанести урон и смотрят сколько он отнял здоровья, так можно и определить неуязвимость и вычислить резист юнита к конкретному типу урона.
Можно сделать через разные способности и уровни способности. Способность 1 - уровни 1, 2, 3 - с описанием: "..осталось [1, 2, 3] заряда". Способность 2 - уровень 1 - неактивная способность.
Логическая переменная (назовём её Cooldown).
Таймер - время = времени восстановления заряда
Триггер 1 Событие - Применение способности. Условие - Применяемая способность = Способность 1 Действие - Установить применившему уровень Способности 1 = уровень Способности 1 минус 1.
Если Cooldown = false, то
Запустить таймер
Установить Cooldown = true
Если уровень Способности 1 = 0, то
Удалить Способность 1 и добавить Способность 2
Триггер 2 Событие - Время - таймер истекает. Действие - Если уровень Способности 1 больше нуля, то
Установить уровень Способности 1 = уровень Способности 1 плюс 1;
Если уровень Способности 1 = 3, то установить Cooldown = false
. . . . . . . . Иначе - запустить таймер
Иначе - удалить герою Способность 2, добавить Способность 1, запустить таймер.
Вызывают существ (можно отловить через событие - "юнит призывает боевую единицу" или через событие "юнит вошел в зону" с проверкой баффа, либо классификации "иллюзия" или "вызванный" и прочее):
ПРИЗЫВ: безграничное число вызванных (вызванные юниты не умирают, если кастер умрет)
Дух воды 'AHwe' - вызывает духов воды (можно указать кол-во вызванных). Появляется рядом с кастером. Дух Океана 'ACwe' - вызывает духов океана (можно указать кол-во вызванных). Появляется рядом с кастером. Разведка 'AEst' - вызывает сову-разведчицу (можно указать кол-во вызванных). Появляется рядом с кастером. Возмездие 'AEsv' - вызывает душу возмездия (можно указать кол-во вызванных). Появляется рядом с кастером. Феникс 'AHpx' - вызывает феникса (можно указать кол-во вызванных). Появляется рядом с кастером. Больше одного феникса нельзя призвать, заменяется новым. Дело не в вызываемой абилке (скорее всего в самом фениксе), так как пробовал поменять на другого типа юнита, и тут безграничное число юнитов вызывает. Медведь 'ANsg' - вызывает медведя (можно указать кол-во вызванных). Появляется рядом с кастером. Кабан 'ANsq'/'Arsq' - вызывает кабана (можно указать кол-во вызванных). Появляется рядом с кастером. Щупальце 'ACtn' - вызывает щупальце (можно указать кол-во вызванных). Появляется рядом с кастером. Призыв слуг 'Aslp'/'ANwm' - вызывает морских существ, готовых прислуживаться (можно указать кол-во вызванных). Появляется рядом с кастером. Сокол 'ANsw' - призывает сокола (можно указать кол-во вызванных). Появляется рядом с кастером. Заводной зверь 'Amec' - вызывает нейтральную зверушку (здесь не указано ничего, и нельзя указать какой тип призывается. Всегда рандомно вызывает зверушку: это может быть кроликом, лягушкой, енотом, цыпленком, свиньей, овца (часто выпадают именно эти зверьки, возможно есть другие, но это не попадались мне). Вшито в игре где-то). Зато можно указать количество вызываемых зверей. Эта абилка вставлена в одноразовый предмет. Вызывает навсегда (длительность задано на "ноль", но можно задать время действия вызова). Вызывает безграничное число юнитов. Это не совсем нейтральное существо, оно может подчиняться вашим указаниям (у нее есть, конечно, бродилка. чтоб не стояло на месте). Это существо больше создано для разведки, вы можете создать неподалеку от базы противника и заслать на базу. Враги не трогают нейтралов. В чем суть этой абилки? Если создать изначально цыпленка на карте, и заслать на базу врага, этого цыпленка тут же заметят как врага, и сразу же прирежут. А если вызвать через эту способность, то враг игнорит вашу зверушку (в некоторых играх против ботов надо попробовать сделать препятствие - если узкие проходы просто загородить цыплятами, то возможно пройти будет сложно). Единственное, что настоящий игрок может заподозрить и убить.
Тварь из Недр 'ANlm' - вызывает лавовых духов огня, обитающих в магме (можно указать кол-во вызванных). Появляется рядом с кастером. Эта абилка отличается от других, поскольку она особенная. Описание: "Нанося урон жертве, она забирает часть жизненной силы. Накопив достаточно жизненной силы, она порождает вторую такую тварь" (при чем это не отслеживается событием "юнит призывает боевую единицу", отслеживает только призыв первой твари, а вот деление нет, деление отслеживается только событием "юнит входит в область"). Короче делится на две твари. Хотя по сути она не похищает жизнь, в абилке настройки ловят на количество ударов, после которого юнит делением вызывает
Характеристики:
"Данные - Деление: количество атак" - кол-во ударов, после которого тварь начнет делиться на себе подобных. Можно сразу проверить, поставив 1.
"Данные - Деление: доп. срок жизни" - таймер жизни. Это значение при делении продлевает время жизни существу, которое вызвало деление, и столько же добавляет вызванному существу.
"Данные - фактор здоровья" - процент здоровья от макс. запаса. Если первый юнит будет покосан (ранен), то при делений второй юнит имеет точно такое же здоровье. Однако, поле "фактор здоровья" пополняем первому и второму юниту часть здоровья. В этом поле стоит 0.5, значит половина от запаса пополняет обоим. (0.00 - ничего не даст, а при отрицательном значений юниты умирают)
"Данные - Задержка деления" - задержка перед тем как поделится на две части. Тварь начинает трясти, а потом делится на две части.
"Данные - количество поколений" - кастер вызвает одну тварь, назовем ее основной. Кастер повторно основных юнитов может безгранично множество вызвать. А основной юнит может вызвать делением других таких же побочных (назову их так, они ни чем не отличаются от основного. Начиная с 4 поколения, у них меняется изображение: с духа на огонька, а в остальном характеристики те же). Число поколение так понял, это сколько раз может расколоться. Например, кол-во поколений = 3, основной юнит - первое поколение, делится на два, теперь эти два юнита - второе поколение, делятся, становится 4 юнита, эти 4 юнита - третье поколение (и больше делиться не могут). Мне неизвестно точно, делится ли юнит на двух новых, или просто вызвает (почкованием размножается), больше похоже, что второе. ставил кол-во поколений 5, и поделило так много юнитов, стало всего 16. Ставил кол-во поколений 6, стало 32.
ФОРМУЛА геометрической прогрессий - макс. кол-во юнитов:
q = 2 (мы знаем, что с каждым шагом их становится в два раза больше)
b1 = 1 (сколько вначале вызываем)
bn = b1 * q ^ n-1 - формула
b5 = b1 * q ^ 5-1 = 1 * 2 ^ 4 = 16
b6 = b1 * q ^ 6-1 = 1 * 2 ^ 6 = 32
Как писал, основных может вызвать много, а значит, и с ними будет также множество побочных при делений (как видим кол-во поколений не влияет на всех, только на определенную группу).
ПРИЗЫВ: Призвать больше чем указано не может, заменяется новым. Здесь тоже не умирают, если кастер сдох
Дух волка 'AOsf'/'ACsf'/'ACs7' - вызывает духов волков. (можно указать кол-во вызванных). Появляется рядом с кастером. Дух вепря 'ACs9' - вызывает вепря (можно указать кол-во вызванных). Появляется рядом с кастером. Медведь (Рексар) 'Arsg' - вызывает медведя (можно указать кол-во вызванных). Появляется рядом с кастером. Астральный зверь 'ACs8' - вызывает адских охотников (можно указать кол-во вызванных). Появляется рядом с кастером. Охотник за головами (предмет) 'AIsh' - вызывает берсерков (можно указать кол-во вызванных). Появляется рядом с кастером. Призыв слуг (предмет) 'AIwm' - призывает морлоков (можно указать кол-во вызванных). Появляется рядом с кастером.
ПРИЗЫВ: Предметные (здесь вы можете призвать два разных типа войск в отличий от других призывов. Эта абилки предметов одинаковы, даже приказы одинаковы. Могут вызвать бесконечное число юнитов, то есть не заменяются новыми):
Предмет: Вызов Адской гончей 'AIfh' Предмет: Вызов Привратника Ада 'AIfu' Предмет: Вызов Призрачного рыцаря 'AIir' Предмет: Вызов беорна 'AIff' Предмет: Вызов беорна-воителя 'AIuw' Предмет: Вызов каменного голема 'AIfr' Предмет: Вызов красного дракона 'AIfd' Предмет: Вызов скелета 'AIfs'
Вроде как тоже не заметил уничтожения вызванного юнита после смерти героя
ПРИЗЫВ: установка вардов в точку
Невидимый страж 'Aeye' - вард духов с большим зеленым глазом, установленный на землю, наблюдает в течении длительного периода времени. Видит также невидимые войска. Устанавливается в указанную точку. Примечание: эта абилка наделяет призываемого юнита постоянной невидимостью. есть у варда скилл "Дух(видимый)" 'Aeth', который не делает невидимый, а просто наделяет указанный в характеристиках данными. Вызывает только одного. Колдовская ловушка 'Asta' - вард-тотем. Эта способность создает вокруг юнита ловушку, которая обездвиживает (оглушает, stun) противников. Прицел, аналогично с духом-целителем, действует по области. Но этот радиус круг от прицела настраивается в самой абилке. Вызывает только одного. Примечание: эта абилка наделяет призываемого юнита невидимостью, правда не постоянная она, но можно настроить время захода в инвиз. Вот все настройки: Длительность оглушения - сколько продлится дебафф оглушения на обычных юнитах (не героях) прежде чем пройдет. Длительность воздействия (герой) - сколько продлится дебафф оглушения на герое. Длительность нормальная - время жизни призванного юнита. Задержка запуска - время после призыва и до того, как он станет невидимым. Радиус обнаружения - расстояние, на котором может быть обнаружен противник и начнет сработка ловушки. Радиус взрыва - область оглушения юнитов. Радиус оглушения у колдовской ловушки слишком маленький, поэтому не всегда кажется срабатывает (на самом деле, это работает на медленных юнитах или ловушки эффективны против милишников). Как только капкан захлопнется, тотем исчезает. Можете продлевать оглушение, чтобы юнит не сбежал, поджав хвост. Это нужно ставить новую ловушку, правда, зависит это еще и от наличия маны, и кулдауна абилки. Ловушка не срабатывает на невидимых юнитов. Можно указать юниту с напару с этой абилки "Урон от взрыва", "Урон от взрыва" срабатывает после смерти носителя, она наносит всем урона. Так как колдовская ловушка не наносит никакого урона, а лишь оглушает, то это хорошо взаимодействуется. Дух-целитель (знахарь) 'Ahwd'/'AChw'/'AIhw' - вард духов, который устанавливается на землю знахарем. Лечит всех вокруг. Этот вызов устанавливается в указанную точку (кстати, мне так и не удалось убрать круг прицела (причем красочный у орков), или хотя бы изменить радиус круга от прицела, но это легко обойти. Канал + триггеры с dummy-кастом в точку). Вызывает только одного. Сторожевая змея 'AOsw'/'Arsw' - вызов призрачной змеи, которая атакует любого рядышком противника. Устанавливается в указанную точку. (можно указать кол-во вызванных) Руна стража 'APwt' - призывает неуязвимого варда-духа, наблюдающего за местностью. Этот призыв делает юнита невидимым (как и у абилки "Невидимый страж").
Темные врата 'ANdp' - в указанную точку вызывает несколько существ. Кол-во вызываемых всегда рандомно (от минимального до максимального значения. в настройках абилки указаны минимальное и максимальное значение). Здесь также можно указать несколько типов существ, это как раз необычно. Типы существ тоже рандомно спавнятся. Например, вызываю 5 существ: это может быть 3 пехотинца и 2 стрелка, так может быть и по-другому 2 стрелка и 3 пехотинца, или 4 пехотинца и 1 стрелок и так далее.
Торнадо 'ANto' - в указанную точку призывается торнадо (призвать можно только одно торнадо). Пока кастер произносит заклинания (делает channeling-анимации), вы можете управлять торнадо. Но учтите, торнадо можно прервать, если кастер прекратит кастовать. Торнадо можно заставить двигаться в любую точку, оно дамажит всех вокруг (у нее аура дамага, аура понижения скоростей, и аура, которая подбрасывает вверх вихрем).
ПРИЗЫВ: разделение юнитов
Три Стихии 'ANef'/'Acef' - герой разделяется на три существа (сам герой пропадает). Герой превращается в трех воинов, наделенных силами Огня, Земли, Ветра. Призыв трех существ ловится событием "юнит призывает боевую единицу". Если хоть один из трех вызванных существ выживет, то герой возродится. Действие завершения заклинания (это когда суммоны исчезнут, а герой появится) ловится "Юнит прекращает/завершает действие заклинания". Даже, если один из выживший будет сильно ранен, герой возродится в полном запасе хп.
ПРИЗЫВ: призыв энтов из деревьев
Сила природы 'AEfn'/'ACfr' - вызывает энтов из деревьев в указанной области, деревья как бы вырубаются, типа ожили. Можно указать количество энтов. Правда, не всегда можно вызвать нужное количество, ведь зависит от количества деревьев в указанной области. Если в абилки указано, что можно призвать 2 энтов, но у вас в указанной области стоит одно дерево, то естественно вызовите одного. Также эта заклинание вырубает все деревья, и не важно сколько энтов указано (будь 1 энт, то сможет вс деревья вырубить). Иногда энты могут застрять в деревьях, это из-за того, что радиус указанной области маленький или целились в гущу деревьев, из-за чего не выйти.
превращение в зомби
Обращение во Тьму 'ANdc'/'SNdc' - сразу пробовал сам разобраться в тестовой карте, но не получается ни на кого нацелиться. Как бы цели не менял, настройки юнитов и цели абилки не ковырял. Но на самом деле все работает. Меня сбил кривой перевод поля. Поле "Конвентирует в расу" - здесь указана раса юнита, юнит которой может превратиться в зомби. По стандарту тут стоит "Все", я подумал, что это все расы, но на самом деле не так. В варике юниты поделены на расы, есть раса "Нежить", "Альянс" и др. Есть также раса "Все" - тоже раса нейтралов. Превращение ловится событием "Юнит призывает боевую единицу". Здесь превращенный юнит не призывается на вашу сторону, он как принадлежал другому игроку, так и принадлежит (но это можно подправить). Единственное, что превратил в другого.
Призыв не работает на тех, кого нельзя оживить (у юнитов в РО "тип смерти"), короче кто не оставляет трупы. Гидра 'Aspy'/Молодая Гидра 'Aspt'/Пауки 'Aspd'/ 'Assp'/Скелет 'Asod' - не имеет иконки. при смерти юнита вызывает других юнитов (можно указать кол-во). Обычно вызывает более мелкую версию себя (например гигантская гидра призвала две маленькие гидры) Паразит 'Acpa'/'ANpa' - внедряет личинку паразита в тело врага, наносит урон, и, если умрет, то вылупляется юнит-паразит (автоприменение работает даже у тех, у кого нет атаки). Можно помочь добить другими юнитами, необязательно, чтобы смерть наступало именно от заклинания. Имеет очень похожие поля с отравляющими абилками, триггер ловит классификацию "отравление". Только вот настройки буфера не работают, чуть что измени в буфере, и не будет работать (там остается без изменений "убить боевую единицу"), короче не получится накладывать эффекты отравления или замедления. В настройках можно настроить снижение скорости боя и передвижения. Дебафф на цели имеет определенное время существования, если развеится, то не получить из него паразита, так как юнит жив, не умер. Если все-таки удаться убить, то после смерти призывается нужный нам юнит-паразит (отслеживается призыва событием "юнит призывает боевую единицу"). Можно указать кол-во призываемых. Этот дебафф нельзя развеить рассеивающим заклинанием. Ежесекундный урон относится к типу атаки "заклинание", не понижается защитой, является магическим уроном Черная стрела 'ANba'/'ACbk' - Orb, наносят дополнительный урон, вешая дебафф черной стрелы. Этот дебафф остается на противнике несколько секунд, повторная атака продлевает длительность дебаффа. Дебафф ловит смерть юнита (даже, если кто-то другой (не лучник) убьет), заклинание призывает скелетов. Ловится событием "юнит призывает боевую единицу". Может с первого выстрела призвать, если урона будет достаточно чтобы сваншотить (завалить с одного удара), и не нужно тогда никакого дебаффа. Этот дополнительный урон при атаке суммируется с нанесенным уроном героя, относится к типу атаки к тому, что указан в атаке. снижается физической защитой. Является физической атакой с физическим уроном. может использовать милишник. Призыв не работает на тех, кого нельзя оживить (у юнитов в РО "тип смерти"), короче кто не оставляет трупы. Печать Преисподней 'ANdo' - на указанного юнита вешают дебафф "Печать Преисподней", который ежесекундно наносит урон цели. Самое забавное, что длительность дебаффа задано на ноль (что значит этот дебафф вечен, его нельзя развеять или рассеять. Придеться спокойно ждать смерти, а лучше его убить поскорее.) Этот дебафф еще ловит смерть юнита (не важно отчего умер от заклинания или от руки какого-нибудь вашего левого юнита), и призывает демона "Привратника ада". Это заклинание также запрещает использовать заклинания и предметы, изучать способности, нанимать войска в зданий и изучать исследования (иконки заклинаний, исследований, нанимаемых войск и геройская кнопка "изучить" становятся не активными, даже пассивки не работают (не активны), а предметы не удается выкинуть или использовать). Ежесекундный урон относится к типу атаки "Заклинание", не понижается защитой, является магическим уроном. Урон можно убрать, поставив ноль. И призыв после смерти тоже можно убрать (копируете поле "тип боевой единицы" у способности нежити "Ядовитое облако (Дух)", оно как раз пустое, и вставляете в поле печать преисподней, тогда при смерти не будет появляться демон). Если обычный юнит (не герой) умирает, то он дропает итемы (хотя эт всегда работало). Является универсальным заклинанием, которое к тому же пробивает невосприимчивость к магий (натравить можно)
иллюзии
Иллюзия 'AOmi' - Создание иллюзорного двойника, сбивающего с толку противника. Все заклинания, наложенные на героя, при этом рассеиваются. Призыв двойника тоже считается как призыв. В характеристиках абилки можно настроить иллюзию (получал больше/меньше от противника или вообще ничего не получал от врага, также как и наносить урон врагу больше/меньше или вообще не наносит никакого урона. Одновременно с этим иллюзии теряют на панеле все активные скиллы, остаются только пассивки. В абилке можно настроить, так что вызванные илююзий не могли наносить урон (весь урон обнуляся). Но очень хорошо срабатывает обманка двойников. Например криты будут выдавать обманку, красные цифры будут всплывать, что нанесли урон, а скилл "иллюзия" по стандарту обнуляет нанесенный урон иллюзией. Есть и недостатки с морфом - он тебя выдает: если заранее создать иллюзорного двойника, а самому потом морфнуть в какого-нибудь другого юнита, то оригинал будет в другой форме, в то время как ваш двойник остается таким же. Чтобы иллюзию перевоплотить (морфнуть) используют способность "Превратиться в медведя" 'Abrf' - везде ставите 0.00 еще ставите нормальную форму, то есть ту, которую хотите перевоплотить. В триггерах этот морф сразу даем и тут же убираем. Сработает баг у иллюзии, и они перевоплотятся в другую форму. Сбивает приказ Предмет: иллюзий 'AIil' - нужно выбрать дружественного юнита, по которому будет создана иллюзия. Призыв двойника тоже считается как призыв. В характеристиках абилки можно настроить иллюзию (получал больше/меньше от противника или вообще ничего не получал от врага, также как и наносить урон врагу больше/меньше или вообще не наносит никакого урона. Одновременно с этим иллюзии теряют на панеле все активные скиллы, остаются только пассивки. В абилке можно настроить, так что вызванные илююзий не могли наносить урон (весь урон обнуляся). Приказ = 852274, строкового приказа не существует.
воскрешение
Воскрешение 'AHre'/предметная: Младшая руна воскрешения 'APrl'/Предмет: Воскрешение 'AIrs'/'AIrx' (эта способность никого не вызывает, а только воскрешает. Но при воскрешении отслеживается призыв через событие). Воскрешает определенное кол-во юнитов (можно указать кол-во оживленных). Требует трупы. Помощь предков 'Aast' - воскрешает одного ближайщего мертвого минотавра. Действует воскрешение на юнитов с классификацией "Минотавр". Любопытная инфа: воскрешают даже вражеских минотавров, и ожившие встают на вашу сторону (для этого нужно настроить цели абилки ).
гальванизация (что-то похожее на воскрешение)
Гальванизация 'AUan'/'ACad'/'AIhd'/Предмет: Гальванизация 'AIan' - оживляет из мертвых трупов определенное кол-во единиц (можно указать кол-во вызванных), делая их неуязвимыми. И сражаются на вашей стороне, и не важно на чьей стороне они воевали до этого. (могут наследовать улучшения, если до этого на них производил другой игрок улучшения. для этого нужно галочку поставить)
призыв с неба
Огненный голем 'AUin'/'ANin'/'SNin'/Огненный голем (предмет) 'AIin' - с неба в указанную область падает голем, который при падении наносит урона (указано в поле абилки "урон"), кроме того, в указанной области юниты оглушаются (stun) на неопределенное время. Урон от падения относится к типу атаки "Заклинание", не понижается защитой. Является магическим уроном. Можно сделать из этой абилки stun по области, но вместо голема нужно указать невидимого неуязвимого даймика (иначе stun не захочет работать). Кстати, в указанной области хорошо валит деревья, так сказать очищает место посадки Огненный дождь (из големов) 'ANrc'/'ANr3' - с неба в указанную область в случайные точки обрушиваются несколько големов. В этой абилке стандартно указывают другую абилку 'ANin'. Так понял, эта абилка заставляет кастовать другую абилку несколько раз в случайные точки. Все настройки принимает побочной абилки: длительность существования големов, stun, урон, радиус поражения и оглушения. По стандарту скилл "огненный голем" 'ANin' в указанной области наносит дополнительный урон, оглушая всех (еще и валит деревья). Можно попробовать другие побочные абилки принять, правда большинство не хотят работать через это. Зато работают другие призывы, правда, оглушает остальных (тоже время оглушения указано в побочных). Откуда берет это оглушение, не понятно (если указал абилку "дух воды"). Жалко, что атакующие заклинания не работают. Проигрывает ли кастер channeling-анимацию - неизвестно, является ли это channeling-анимацией? Но призывает последовательно по одному голему, и пока всех не призовет, тогда не прекратить махать руками. значит можно прервать действие, тогда либо не всех големов призовет или вообще никого не успеет призвать.
ПРИЗЫВ: поднятие мертвецов - требует трупы
Оживить мертвых 'Arai'/'ACrd' (автокаст) - автокастовая способность, которая поднимает скелетов из мертвых трупов. требует трупы. Это способность позволяет оживить одновременно несколько видов (например. скелет + скелет-некромант, еще можно указать и их кол-во). Есть в абилке поле "тип войск для проверки" - тут указывается тип, что это поле значит, не знаю (работает без этого). Оживить мертвых (предмет) 'AIrd' - эта похожая способность с автокастовой со всеми полями. Но задействована в предмете. Можно дать юниту. У него нет строкого приказа. Дебагом выявил числовой id-приказ 852624. Здесь не работает автокаст, точнее его нет - это же предмет. Трупоеды 'AUcb' (автокаст) - вызывает жука-трупоеда. Работает при наличий трупа. Это способность позволяет оживить одновременно несколько видов (например. скелет + скелет-некромант + еще можно указать и их кол-во. В данный момент там указан один жук-трупоед, а второй тип не указан). Вызывает навсегда, типа длительность 0 стоит. Имеет лимит на вызванных. Есть галочка "Убить после смерти мага" - после смерти кастера вызванные могут умереть (у абилке стоит "нет", значит жукам повезло, не умрут). Тут все же самое, что в скилле "Оживить мертвых", отличие только в том, что убрано поле "тип войск для проверки", добавлено поля "Макс. вызванных юнитов" и "Убить после смерти мага". Зов Возмездия 'Avng' (автокаст) - вызывает духов возмездия на месте трупа. для работы этого скила требует труп. Можно в настройках установить одновременно два разных типа, и определить их количество. Имеет лимит на вызванных. Абилка в точь-точь похожа на "трупоеды", разница лишь в том, что добавлено еще поле "тип войск для проверки", которое пустует и неизвестно что значит. Здесь вызванные духи существуют определенное время, могут погибнуть после смерти кастера. Галочка "Убить после смерти мага" - итак понятно, а вот как сделать чтобы выжили (см. пример трупоеды)? это работает на постоянных вызванных существ
особенные случаи:
Перерождение 'AOre'/'AOr3'/'ACm'/'ANr2'/'ANrn' предмет: крест перерождения 'AIrc'
Воин, обладающий этой способностью, возрождается через несколько секунд после гибели. После гибели обычно крест на земле лежит, между смертью и воскрешением есть задержка. Недостаток этого способа в том, то нельзя отловить никаким событием:
проверял, но может быть не точным. Здесь не нашел как отследить.
ни "вызывает боевую единицу" (не ловит, хотя логично, мы же не вызываем юнита, а воскрешаем),
"юнит становится воскрешаемым" (не понятное событие, хотя склоняюсь к тому, что относится это к другой способности, например способности Артеса "Гальванизация"/ или "воскрешение" паладина),
"юнит начинает/прекращает/завершает воскрешение" (это относится к алтарю, когда юнит умирает, игрок заново воскрешает в алтаре),
"юнит начинает применять способность/приводит способность в действие/завершает применение способности" (попробовал, но увы нет),
"юнит входит в регион .../юнит выходит" (увы нет, обычно когда юнит умирает, он исчезает из карты. Но с этой абилкой остается в игре, крест и тень то тоже остаются),
"юнит умирает" (видимо, это не считается в игре смертью)
Воин, обладающий этой способностью, возрождается через несколько секунд после гибели.
В интернете (много чего искал) пишут, что перерождение ловится событием "unit life becomes < 0.0405". Тестировал, и само событие не работает. Можно только периодически проверять с помощью проверки "здоровье меньше 0.0405". Откуда взялось число 0.0405 мне неведомо, дебаг показывает, что у юнита во время реинкарнации 0.00 здоровья. Надежности как бы мало для того, чтобы верить тем (я про число 0.0405). Еще периодически можно проверять классификацией "Мертв (Dead)", "IsUnitType(GetTriggerUnit(), UNIT_TYPE_DEAD)", которая говорит что юнит мертв во время реинкарнации. Все это не работает, так как срабатывает и на обычной смерти (на юните без перерождении срабатывает это, короче ничего не дает это).
Еще одна особенность: вроде во время смерти с предметом "крест перерождения" срабатывает событие юнит "использует предмет"\"использует способность" прокатывают.
Но вот отследить момент, когда юнит умирает и воскрешается, так и не удается (только через костыли). Можно свою систему перерождения сделать.
Примечание: предметная способность от креста перерождения 'AIrc' невидима, даже, если ее дать герою. И эта способность при смерти не срабатывает, видимо связана с предметом. Предположение: чтобы заработала, надо сделать снова ее видимой.
Перерождение 'AIrb' - используется в руне подчинения. Воскрешает моба, из которого выпала эта руна в качестве лута. Лут указан в таблице предметов с выпадением шанса. Эта таблица связывает руну с мобом. При использований руны сможете призвать (воскресить) именно этого моба, который будет драться на вашей стороне.
-Если просто триггерно создать на карте, а потом подобрать и использовать. Не получится воскресить.
-Если переделать руну в обычный итем, и отдать мобу. А при убийстве подобрать и заюзать. Не получится воскресить.
-Если использовать Item pool. www.hiveworkshop.com/threads/itempools-guide.35180 Как оказалось, Item pool и таблица предметов с выпадением одно и то же, но чуть отличаются. Если задать в редакторе в свойствах выбранного юнита на карте таблицу с предметами, то работает. А триггерный аналог ItemPool никакой связи между руной и умирающим не образует, ItemPool только помогает рандомный итем достать и все =(. Получается тоже самое, при получений руна дропается, но она ничего не делает. только через таблицу в свойствах юнита можно задать.
Не ловится событием "юнит призывает боевую единицу". Зато, ловится событием "Юнит вошел в регион". Можно было просто запомнить и пересоздать триггерно этого юнита.
Злые духи (у орды)/ Москиты (у нежити) 'AOls'/'AUls' - При активации заклинания от кастера вылетают духи, которые высасывают у врагов хп. И отдают добытые хп кастеру, тем самым пополняя ему здоровье. Это особый призыв духов, но имеет некую особенность, событие триггеров "юнит - вызывает боевую единицу" не считает, что этих духов призвали. Словить можно по событию "юнит входит в регион ... ". Уход из мира живых (исчезновение) можно отследить с помощью "юнит умирает". Есть у духов способность "москиты" 'Aloc' (надеюсь знаете что это такое? это такая способность, которая скрывает полоску здоровья, делает юнитов невыделяемыми, позволяет проходить сквозь объекты. Часто эта способность используется dummy-unit. Имеет недостаток, на такого юнита нельзя натравить мышкой. Кстати, способность москиты 'Aloc' и способности 'AOls'/'AUls' тесно связаны между собой. Если удалить у призываемой саранчи способность "москиты" 'Aloc', то духи-саранчи при вызове перестают кружится, стоят на месте, короче, ничего не хотят делать. Давайте разберемся в характеристиках абилки, как она работает: "Число членов стаи" - максимум вызванных москитов, "Максимум членов стаи на цель" - максимальное возможное количество москитов, сфокусированных на одном юните. "Фактор возвращенного урона" - сколько процентов (%) урона, нанесенным москитом, превращается в здоровье, затем это здоровье отдаст кастеру при возврате к нему. "Порог возвращенного урона" - максимальное число похищенного здоровья одним москитом, необходимое для возврата к кастеру и передачи герою добытого здоровья. Если порог больше или равно кол-во похищенного хп, то москит отдаст здоровье кастеру. Москит может похитить здоровье у одной цели, если будет мало, полетит к следующей цели, и так будет накапливать похищенное здоровье. "Интервал отпускания боевой единицы" - единицы измерения (в секундах) - задержка между вызовом каждой новой саранчи. Чтобы было понятно: при вызыве появилась первая саранча, через 0.2 секунды появилась вторая, через 0.2 сек третья - и так пока все 20 не появятся. (по умолчанию количество вызванных единиц: 20, по умолчанию: 0.2 сек = >> 20 * 0.2 = 4 секунды, прежде чем последний москит появится, можно проверить дебагом). "Область воздействия" - радиус действия саранчи. показывает, как далеко саранча может отойти от заклинателя, она мгновенно возвращается, если расстояние между ее положением и заклинателем больше заданного значения. По поводу урона - урон наносят сами вызванные юниты, и весь наносимый ими урон является физическим уроном (наносится с руки), так как понижается защитой. Не сбивает текущий приказ кастера, кастер останавливается, чтобы юзнуть скилл, а потом продолжает делать дальше дела
Завод 'ANfy'/ Мини-завод 'ANsy'/'ANs1'/'ANs2'/'ANs3' - пассивка с иконкой, каждый раз создает новых маленьких заводных гоблинов. Интервал порождения - время, через которое создается новый гоблин. Есть "радиус подчинения" - если гоблин отойдет дальше этого радиуса от завода, то погибнет. Это очень похоже на призыв, там таймер жизни нацепляют, наносится дополнительный урон, как вызванным существам, от магических заклинаний. Но не ловится событием "юнит призвал боевую единицу", зато можно ловить по событию "юнит вошел в область". Неплохо сочетается со способностью "сбор" 'ARal', "Сборный пункт" - указываешь флаг в точку, где будет скапливаться все войско (как только появится рядом, он побежит к точке сбора).
Вообще есть ли такая которая делает чтобы призванное существо не умирало после смерти
Да почти все способности такие: призванное существо не умирает после смерти героя. Проверял. Есть исключение - это у трупоедов и зов возмездия. Если есть особые случаи не работы показывай, что не работает и так далее
вариант А - тупо добавить аним.таг юниту, его свойства не изменятся, просто будет выглядеть как медведь
вариант Б - делать абилки в спеллбуке пермаментными, тогда они не будут пропадать
» WarCraft 3 / Дополнительные предметы
» WarCraft 3 / Атака на игроков
» WarCraft 3 / Утечки памяти
» WarCraft 3 / MPQ открывает только для чтения.
» WarCraft 3 / Импорт Текста
» WarCraft 3 / Почему не срабатывает триггер?
» WarCraft 3 / Отмена способности
» WarCraft 3 / Отследить нажатие мыши
» WarCraft 3 / Ошибка в редакторе обьектов
» WarCraft 3 / Утечки
» WarCraft 3 / Изменить заклинания в книге заклинаний
» WarCraft 3 / Вопрос про триггер
» WarCraft 3 / Пропали спецэффекты
» WarCraft 3 / обсерватория
» WarCraft 3 / Параметры нестандартных способностей
» WarCraft 3 / респавн мобов
» WarCraft 3 / Изменение ловкости героя
» WarCraft 3 / проблема с ландшафтом
» WarCraft 3 / Лицензия WarCraft 3
» WarCraft 3 / Редактор ИИ
» WarCraft 3 / Как исправить?
» WarCraft 3 / Использования юнита как снаряд
» WarCraft 3 / Триггерный ИИ
» WarCraft 3 / Заряд и способность
» WarCraft 3 / Как заставить юнитов использовать способности в редакторе